home *** CD-ROM | disk | FTP | other *** search
/ MACD 5 / MACD 5.bin / workbench / boot / czesc_2 / toolmanager / programmers / modula / toolmanagerd.def next >
Text File  |  1993-05-15  |  3KB  |  161 lines

  1. DEFINITION MODULE ToolManagerD; (*$ Implementation:=FALSE *)
  2.  
  3.  
  4.  
  5. (*
  6.  * libraries/toolmanager.h  V2.1
  7.  *
  8.  * shared library include file
  9.  *
  10.  * (c) 1990-1993 Stefan Becker
  11.  *)
  12.  
  13. (*
  14.  * M2Amiga Modula-2 declaration
  15.  *
  16.  * (FreeWare) 1993 JOW
  17.  *
  18.  * If you encounter any problems with these, please contact me at
  19.  *   jow@sun.rz.uni-wuerzburg.de  or  jow@hcast.franken.de
  20.  *)
  21.  
  22. IMPORT UD:UtilityD;
  23. IMPORT ID:IntuitionD;
  24. IMPORT S:SYSTEM;
  25.  
  26.  
  27.  
  28. CONST
  29.   tmName="toolmanager.library";
  30.  
  31.  
  32.  
  33. (* ToolManager Object Types
  34. TYPE
  35.   TMObjType=(otExec,otImage,otSound,otMenu,otIcon,otDock,otAccess);
  36. *)
  37. CONST
  38.   otExec  =0;
  39.   otImage =1;
  40.   otSound =2;
  41.   otMenu  =3;
  42.   otIcon  =4;
  43.   otDock  =5;
  44.   otAccess=6;
  45.  
  46.  
  47.  
  48. (* internal handle structure, PRIVATE *)
  49. TYPE
  50.   TMHandlePtr=S.ADDRESS;
  51.  
  52.  
  53.  
  54. (* ToolManager Object Properties (see Object.doc) *)
  55.  
  56.   (* Type: TMOBJTYPE_EXEC *)
  57.   OTExecTags=
  58.     (opArguments:=UD.tagUser+1,
  59.      opCommand,       (* Also used for TMOBJTYPE_SOUND    *)
  60.      opCurrentDir,
  61.      opDelay,
  62.      opExecType,
  63.      opHotKey,        (* Also used for TMOBJTYPE_DOCK     *)
  64.      opOutput,
  65.      opPath,
  66.      opPriority,
  67.      opPubScreen,     (* Also used for TMOBJTYPE_DOCK *)
  68.      opStack,
  69.      opToFront);
  70.  
  71.   (* Type: TMOBJTYPE_IMAGE *)
  72.   OTImageTags=
  73.     (opFile:=UD.tagUser+257,
  74.      opData);
  75.  
  76.   (* Type: TMOBJTYPE_SOUND *)
  77.   OTSoundTags=
  78.     (opPort:=UD.tagUser+513);
  79.  
  80.   (* Type: TMOBJTYPE_MENU/ICON *)
  81.   OTMenuIconTags=
  82.     (opExec:=UD.tagUser+769,
  83.      opSound);
  84.  
  85.   (* Type: TMOBJTYPE_ICON *)
  86.   OTIconTags=
  87.     (opImage:=UD.tagUser+1025,
  88.      opShowName);
  89.  
  90.   (* Type: TMOBJTYPE_ICON/DOCK *)
  91.   OTIconDockTags=
  92.     (opLeftEdge:=UD.tagUser+1281,
  93.      opTopEdge);
  94.  
  95.   (* Type: TMOBJTYPE_DOCK *)
  96.   OTDockTags=
  97.     (opActivated:=UD.tagUser+1536,
  98.      opCentered,
  99.      opColumns,
  100.      opFont,
  101.      opFrontMost,
  102.      opMenu,
  103.      opPattern,
  104.      opPopUp,
  105.      opText,
  106.      opTitle,
  107.      opTool,
  108.      opVertical,
  109.      opBackdrop,
  110.      opSticky);
  111.  
  112.   (* Type: TMOBJTYPE_ACCESS *)
  113.   (* None defined yet... OTAccessTags=... *)
  114.  
  115.  
  116. (* Types for TMOP_ExecType *)
  117. (* ---
  118.    TYPE
  119.      ExecTypes=(etCLI,etWB,etARexx,etHook);
  120.    --- *)
  121.  
  122. CONST
  123.   etCLI    =  0;
  124.   etWB     =  1;
  125.   etARexx  =  2;
  126.   etDock   =  3;
  127.   etHotKey =  4;
  128.   etNetwork=  5;
  129.   etHook   =100;
  130.  
  131.  
  132. (* Data structures for storing image sequences (tmotImage/tmopData)        *)
  133. (* TMImageNode contains the data for ONE picture. Several nodes are joined *)
  134. (* into a single-linked chain via TMImageNode.next                         *)
  135. TYPE
  136.   TMImageNodePtr=POINTER TO TMImageNode;
  137.   TMImageNode=
  138.     RECORD
  139.       next: TMImageNodePtr;     (* pointer to next node *)
  140.       data: S.ADDRESS;          (* MEMF_CHIP memory!!   *)
  141.     END;
  142.  
  143.  
  144.  
  145. (* TMImageData contains information about the image data, like sizes etc.   *)
  146. (* You MUST initialize BOTH Image structures and they MUST BE identical     *)
  147. (* except for the ImageData pointer. normal.ImageData should point to       *)
  148. (* an image data which shows the inactive state and selected.ImageData      *)
  149. (* should point to an image which shows the active state.                   *)
  150. TYPE
  151.   TMImageData=
  152.     RECORD
  153.       normal: ID.ImagePtr;      (* inactive state       *)
  154.       selected: ID.ImagePtr;    (* active state         *)
  155.       data: TMImageNodePtr;     (* chain of images      *)
  156.     END;
  157.  
  158.  
  159.  
  160. END ToolManagerD.def
  161.